"========================================================
" Highlight All Function
"========================================================
syn match cppFunction "\<[a-zA-Z_][a-zA-Z_0-9]*\>[^()]*)("me=e-2
syn match cppFunction "\<[a-zA-Z_][a-zA-Z_0-9]*\>\s*("me=e-1
hi link cppFunction Function

"========================================================
" Highlight All Keyword
"========================================================
syn keyword	cppType	string

"========================================================
" Highlight All Math Operator
"========================================================
" cpp math operators
syn match       cppMathOperator     display "[-+\*/%=]"
" cpp pointer operators
syn match       cppPointerOperator  display "->\|\."
" cpp logical   operators - boolean results
syn match       cppLogicalOperator  display "[!<>]=\="
syn match       cppLogicalOperator  display "=="
" cpp bit operators
syn match       cppBinaryOperator   display "\(&\||\|\^\|<<\|>>\)=\="
syn match       cppBinaryOperator   display "\~"
syn match       cppBinaryOperatorError display "\~="
" More cpp logical operators - highlight in preference to binary
syn match       cppLogicalOperator  display "&&\|||"
syn match       cppLogicalOperatorError display "\(&&\|||\)="

syn match	cppCusOperator	display "[{}<>:&*=+^%!~,.?;/-]"

" Math Operator
hi link cppMathOperator Operator
hi link cppPointerOperator Operator
hi link cppLogicalOperator Operator
hi link cppBinaryOperator  Operator
hi link cppBinaryOperatorError Operator
hi link cppLogicalOperator Operator
hi link cppLogicalOperatorError Operator
hi link cppCusOperator Operator
